home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 1
/
Cream of the Crop 1.iso
/
PROGRAM
/
SPL.ARJ
/
STMTS
< prev
next >
Wrap
Text File
|
1991-09-26
|
8KB
|
331 lines
The following are the statement formats for the SuperBASIC
Programming Language.
1. BEGIN
2. REAL <variable> {,<variable>,..........,<variable>};
3. INTEGER <variable> {,<variable>,..........,<variable>};
4. STRING <variable> {,<variable>,..........,<variable>};
5. REAL ARRAY <array variable>(<bounds>) {,<array variable>
(<bounds>),..........};
6. INTEGER ARRAY <array variable>(<bounds>) {,<array variable>
(<bounds>),..........};
7. STRING ARRAY <array variable>(<bounds>) {,<array variable>
(<bounds>),..........};
8. PROCEDURE <procedure name> { (<parameter list>) };
BEGIN
<statements>
END
9. COMMENT <text>; [Note: <text> should not contain ' char.]
10. GO <label>;
11. GO TO <label>;
12. GOTO <label>;
13. ONERRGOTO <label>;
14. RETURN {<label>};
15. INPUT( {@} {<prompt string>{@|,}} <variable list> );
15a. INPUT( #<file number>,<variable list> );
15b. LINEIN( {@} {<prompt string>{@|,}} <string variable>);
15c. LINEIN( #<file number>,<string variable>);
16. GET #<file number> {,<record number>};
17. PUT #<file number> {,<record number>};
9
18. OUTPUT( {#<file number>,} {USING <string expression>@}
{<output expression list>} );
19. {CALL} <procedure name> {( <argument list> )};
20. FOR <scalar arithmetic variable> := <start arith. expr.>
STEP <increment arithmetic expression>
UNTIL <limit arithmetic expression>
DO BEGIN
<statements>
END
21. IF <logical expression> THEN <statement>
{ ELSE <statement> }
Note: In each of the clauses THEN,ELSE the <statement>
can be replaced with BEGIN <statements> END
The single statement may not be an IF,FOR,REPEAT,REAL,
INTEGER,STRING,PROCEDURE,ON, or WHILE statement. You
must place it between BEGIN and END statements.
22. END
23. WHILE <logical expression> DO
BEGIN
<statements>
END
24. REPEAT <statements>
UNTIL <logical expression>;
25. ;
26. WRITE {#<file number>,} {<expression list>};
27. CHAIN( <file name> );
28. BEEP;
29. BLOAD( <file name> {,<offset>} );
10
30. BSAVE( <file name>,<offset>,<length> );
Note:The offset is added to the current segment address
which gives the address.
31. CALL <variable> {( <argument list> )};
Note:<variable> is an INTEGER variable that has the same
name as a global program name as in PASCAL,ASSEMBLER, or
FORTRAN (by MICROSOFT)
32. CLEAR {{,<highest location>} {,<stack space>}};
33. CLOSE( {#} <file number> {,{#} <file number>,..........} );
34. FILES( { <files> } );
35. FIELD # <file number>,<field width> AS <string variable>,
{ <field width> AS <string variable>,.......... };
36. KILL( <files> );
37. NAME( <file name> AS <new file name> );
38. OPEN( <mode>,{#} <file number>,<file name> {,<record len.>} );
Note:The <mode> in 38. is 'O','I',or 'R'
38a. OPEN( <file name> { FOR <mode> } AS {#} <file number>
{ LEN = <record length> } );
Note:The <mode> in 38a. is INPUT,OUTPUT,or APPEND. RANDOM
is assumed if mode is left out.
38b. OPEN( 'COM1:<speed>,<parity>,<data>,<stop>' AS <file no.> );
39. OUT( <port number>,<data> );
40. DOS;
Note:This statement brings the user back to MS DOS.
41. POKE <machine location offset>,<data>;
42. RESET;
43. RESUME { <label> };
44. RUN( <file name> );
11
45. STOP;
46. WAIT <port address>,<integer expr.>,<integer expr.>;
47. HOME; Note:This statement clears the screen.
48. DEFSEG := <expression>;
49. ERROR <integer expression>;
50. KEY <key number>,<string expression>;
50a. KEY LIST;
50b. KEY ON;
50c. KEY OFF;
51. LSET <string variable> := <string expression>;
52. RSET <string variable> := <string expression>;
53. RANDOMIZE <arithmetic expression>;
54. SWAP <variable>,<variable>;
55. COLOR { <foreground> } {,<background> };
56. DRAW <string expression>;
57. CIRCLE (<x center>,<y center>),<radius> {,<color {,<start>
,<end> {,<aspect ratio>}}};
58. GET (<x1>,<y1>)-(<x2>,<y2>),<array name>;
59. PUT (<x1>,<y1>),<array name> {,<action verb> };
Note: <action verb> is AND,OR,XOR,PSET,or PRESET
60. LINE (<x1>,<y1>)-(<x2>,<y2>) {,{<color>} {,B {F}};
Note:Lower case letters b,f can be used instead of B,F
61. LOCATE {<row>},{<column>} {,{<cursor>}};
62. PRESET (<x>,<y>) {,<color>};
62a. PRESET STEP (<x offset>,<y offset>) {,<color>};
63. PSET (<x>,<y>) {,<color>};
63a. PSET STEP (<x offset>,<y offset>) {,<color>};
64. PAINT (<x start>,<y start>) {,<paint color> {,<border color>}};
12
65. SCREEN {<graphics mode>,} {<reverse video>};
66. DATE$ := <date string expression>;
67. TIME$ := <time string expression>;
68. MID$(<string expr. 1>,<integer expr. 1>{,<integer expr. 2>})
:= <string expression 2>;
69. WIDTH <integer expression>;
70. COM( <arithmetic expression> ) ON
OFF ;
STOP
71. KEY( <arithmetic expression> ) ON
OFF ;
STOP
72. ON COM( <arithmetic expression> ) THEN CALL <procedure name> ;
73. ON KEY( <arithmetic expression> ) THEN CALL <procedure name> ;
Note: For statements 72. and 73. the <procedure name> represents
a procedure without arguments.
74. NULL <integer expression>;
75. <space> EOT <space>
Note:This must be on the last line of the file.
76. <arithmetic variable> := <arithmetic expression>;
77. <string variable> := <string expression>;
78. <label>:.....:<label>:<executable statement>;
Anything in between { } is optional.
Anything between < > means a description of the value and that
the < > are not part of the statement.
Repetition symbol ......... means that an item can be repeated.